﻿// CLoginDlg.cpp: 实现文件
//

#include "pch.h"
#include "SalaryManagement.h"
#include "CLoginDlg.h"
#include "afxdialogex.h"
#include"InfoFile.h"


// CLoginDlg 对话框

IMPLEMENT_DYNAMIC(CLoginDlg, CDialogEx)

CLoginDlg::CLoginDlg(CWnd* pParent /*=nullptr*/)
	: CDialogEx(IDD_LOGIN_IN, pParent)
	, m_user(_T(""))
	, m_pwd(_T(""))
{

}

CLoginDlg::~CLoginDlg()
{
}

void CLoginDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialogEx::DoDataExchange(pDX);
	DDX_Text(pDX, IDC_EDIT1, m_user);
	DDX_Text(pDX, IDC_EDIT2, m_pwd);
}


BEGIN_MESSAGE_MAP(CLoginDlg, CDialogEx)
	ON_BN_CLICKED(IDC_BUTTON1, &CLoginDlg::OnBnClickedButton1)
	ON_BN_CLICKED(IDC_BUTTON2, &CLoginDlg::OnBnClickedButton2)
	ON_WM_CLOSE()
END_MESSAGE_MAP()


// CLoginDlg 消息处理程序


void CLoginDlg::OnBnClickedButton1()
{
	// TODO: 在此添加控件通知处理程序代码
	//登录按钮点击事件

	UpdateData(TRUE);
	if (m_user.IsEmpty() || m_pwd.IsEmpty()) {
		MessageBox(L"消息内容不能为空");
		return;
	}

	//获取正确的值
	CInfoFile file;
	CString str, name;
	file.ReadLogin(name, str);
	//MessageBox(name);
	//MessageBox(str);
	if (name == m_user) {
		if (str == m_pwd) {
			CDialog::OnCancel();
		}
		else {
			MessageBox(L"密码有误");
		}
	}
	else {
		MessageBox(L"用户名有误");
	}
}


BOOL CLoginDlg::OnInitDialog()
{
	CDialogEx::OnInitDialog();

	// TODO:  在此添加额外的初始化
	CString pwd, name;
	CInfoFile file;
	file.ReadLogin(name, pwd);
	m_user = name;
	m_pwd = pwd;
	UpdateData(FALSE);
	return TRUE;  // return TRUE unless you set the focus to a control
				  // 异常: OCX 属性页应返回 FALSE
}


void CLoginDlg::OnBnClickedButton2()
{
	// TODO: 在此添加控件通知处理程序代码
	exit(0);
}


void CLoginDlg::OnOK()
{
	// TODO: 在此添加专用代码和/或调用基类

	//CDialogEx::OnOK();解决回车进入系统的bug
	OnBnClickedButton1();
}


void CLoginDlg::OnClose()
{
	// TODO: 在此添加消息处理程序代码和/或调用默认值

	//CDialogEx::OnClose();关闭当前对话框

	exit(0);
}
